babl: limit exported symbols
authorØyvind Kolås <pippin@gimp.org>
Mon, 25 Sep 2017 17:53:52 +0000 (19:53 +0200)
committerØyvind Kolås <pippin@gimp.org>
Mon, 25 Sep 2017 17:57:22 +0000 (19:57 +0200)
For now, also including symbols needed for internal tools and tests, that are
not part of the public API; the API promised by babl remains the public
headers, but this reduces the public dynamic loaders namespace a little.

Makefile.am
babl/Makefile.am
export-symbols [new file with mode: 0644]
extensions/Makefile.am

index e46014c13230cc363a8c2011b3015a11ed70253c..ffa96454c36b1104b31db719a7c4c5a6d0ff7df1 100644 (file)
@@ -23,7 +23,8 @@ EXTRA_DIST = \
        NEWS                    \
        TODO                    \
        autogen.sh              \
-       babl.pc.in
+       babl.pc.in              \
+       export-symbols
 
 DISTCLEANFILES = \
        $(built_dist_files)     \
index c902325b8f539bd04dc68f1a883ec274191227fe..6caa92964cba87821ac820d50f8fbf4c649f3f73 100644 (file)
@@ -91,18 +91,22 @@ AM_CPPFLAGS =                               \
 
 lib_LTLIBRARIES= libbabl-@BABL_API_VERSION@.la
 
+libbabl_@BABL_API_VERSION@_la_SOURCES= $(h_sources) $(c_sources)
 libbabl_@BABL_API_VERSION@_la_CFLAGS= $(SSE2_EXTRA_CFLAGS)
 
-libbabl_@BABL_API_VERSION@_la_SOURCES= $(h_sources) $(c_sources)
 libbabl_@BABL_API_VERSION@_la_LIBADD=  \
        base/libbase.la                 \
        @LTLIBOBJS@
 
+libbabl_la_LDFLAGS=                    \
+       $(MATH_LIB) $(THREAD_LIB) $(LOG_LIB)
+
 libbabl_@BABL_API_VERSION@_la_LDFLAGS=                 \
-       ${no_undefined} $(MATH_LIB) $(THREAD_LIB) $(LOG_LIB) \
+       $(MATH_LIB) $(THREAD_LIB) $(LOG_LIB)            \
+       -export-symbols $(top_srcdir)/export-symbols    \
        -version-info $(BABL_LIBRARY_VERSION)
 
-EXTRA_DIST = babl-ref-pixels.inc
+EXTRA_DIST = babl-ref-pixels.inc 
 
 
 # If git is available, always check if git-version.h should be
diff --git a/export-symbols b/export-symbols
new file mode 100644 (file)
index 0000000..a0b28c4
--- /dev/null
@@ -0,0 +1,68 @@
+babl_component
+babl_component_new
+babl_conversion_get_destination_space
+babl_conversion_get_source_space
+babl_conversion_new
+babl_cpu_accel_get_support
+babl_exit
+babl_fast_fish
+babl_fish
+babl_format
+babl_format_get_bytes_per_pixel
+babl_format_get_model
+babl_format_get_n_components
+babl_format_get_space
+babl_format_get_type
+babl_format_has_alpha
+babl_format_is_format_n
+babl_format_is_palette
+babl_format_n
+babl_format_new
+babl_format_with_space
+babl_free
+babl_get_name
+babl_get_name
+babl_get_user_data
+babl_get_version
+babl_icc_get_key
+babl_init
+babl_introspect
+babl_malloc
+babl_model
+babl_model_new
+babl_new_palette
+babl_palette_reset
+babl_palette_set_palette
+babl_process
+babl_process
+babl_sampling
+babl_set_user_data
+babl_space
+babl_space_from_icc
+babl_space_from_xyz
+babl_space_get_rgbtoxyz
+babl_space_to_xyz
+babl_ticks
+babl_type
+babl_type_new
+babl_space_to_icc
+babl_db_exist_by_name
+babl_db_find
+babl_db_init
+babl_db_exist_by_id
+babl_db_each
+babl_formats_count
+babl_format_class_for_each
+babl_model_class_for_each
+babl_type_class_for_each
+babl_conversion_class_for_each
+babl_set_extender
+babl_extension_quiet_log
+babl_fish_path
+babl_extender
+babl_class_name
+babl_sanity
+babl_type_is_symmetric
+babl_model_is_symmetric
+babl_fish_db
+babl_polynomial_approximate_gamma
index f09ec875982fd2a85b09d661d26fcb173caf1bf5..ee979197c0b906b33a34253156f859e0b70d1a36 100644 (file)
@@ -66,8 +66,7 @@ ycbcr_la_SOURCES = ycbcr.c
 float_la_SOURCES = float.c
 fast_float_la_SOURCES = fast-float.c
 
-LIBS = $(top_builddir)/babl/libbabl-@BABL_API_VERSION@.la $(MATH_LIB) \
-       $(THREAD_LIB)
+LIBS = $(MATH_LIB) $(THREAD_LIB) -lbabl-0.1
 
 sse2_float_la_CFLAGS = $(SSE2_EXTRA_CFLAGS)
 sse2_int8_la_CFLAGS = $(SSE2_EXTRA_CFLAGS)